BUtility is a full featured editor that gives users of Novell's BtrieveBUtility is a full featured editor that gives users of Novell's Btrieve
Record Manager the ability to manipulate and examine Btrieve files. AmongRecord Manager the ability to manipulate and examine Btrieve files. Among
BUtility's many features are:BUtility's many features are:
* Edit the data buffer using hexadecimal or decimal values using menus * Edit the data buffer using hexadecimal or decimal values using menus
and editing controls familiar to all Microsoft QuickBasic, QuickC, and and editing controls familiar to all Microsoft QuickBasic, QuickC, and
Windows users. Windows users.
* Create Btrieve files using clear and easy-to-use dialog boxes to * Create Btrieve files using clear and easy-to-use dialog boxes to
specify all characteristics of a file including file name, record specify all characteristics of a file including file name, record
length, page size, number of preallocated pages, variable length length, page size, number of preallocated pages, variable length
records, blank truncation, data compression, key-only or data-only, records, blank truncation, data compression, key-only or data-only,
free space threshold, key attributes, and alternate collating free space threshold, key attributes, and alternate collating
sequence. Easily copy and edit the attributes of one file to create sequence. Easily copy and edit the attributes of one file to create
another. another.
* Print the data buffer, key buffer, or file status. * Print the data buffer, key buffer, or file status.
* Copy records from one file to another following any key path for any * Copy records from one file to another following any key path for any
range of key values. While records are copied, BUtility displays the range of key values. While records are copied, BUtility displays the
total records copied, the total remaining to copy, and an estimated total records copied, the total remaining to copy, and an estimated
time of completion based on current copying speed. time of completion based on current copying speed.
* Other utility features include saving, loading, and recovering. * Other utility features include saving, loading, and recovering.
* Create an external index file from key specification entered in * Create an external index file from key specification entered in
standard dialog boxes. standard dialog boxes.
* Insert text anywhere in the data buffer. * Insert text anywhere in the data buffer.
* View and change any field of data in the data buffer by specifying * View and change any field of data in the data buffer by specifying
the field type (any of the Btrieve key types), the position, and the the field type (any of the Btrieve key types), the position, and the
length. length.
* Edit and search through key values. * Edit and search through key values.
* Search and replace text throughout a file. * Search and replace text throughout a file.
* Perform any Btrieve operation on a file. * Perform any Btrieve operation on a file.
* Choose the lock type on Btrieve operations. * Choose the lock type on Btrieve operations.
* Create a supplemental index using the same standard key attribute * Create a supplemental index using the same standard key attribute
dialog box as Create and Index. Easily drop any supplemental index. dialog box as Create and Index. Easily drop any supplemental index.
* Set or clear a file's owner or extend the file over two logical * Set or clear a file's owner or extend the file over two logical
drives. drives.
All utilities supported by BUTIL are included in BUtility and areAll utilities supported by BUTIL are included in BUtility and are
implemented using intuitive dialog boxes.implemented using intuitive dialog boxes.
BUtility gives you all of the capabilities of a Btrieve language interfaceBUtility gives you all of the capabilities of a Btrieve language interface
and often eliminates the need to write specific testing programs. Withand often eliminates the need to write specific testing programs. With
BUtility, you may create a file with certain characteristics, open thatBUtility, you may create a file with certain characteristics, open that
file, insert and update records, view a non-key field from the data bufferfile, insert and update records, view a non-key field from the data buffer
and change it to another value, automatically search through records toand change it to another value, automatically search through records to
find specific text, test locking characteristics for your environment,find specific text, test locking characteristics for your environment,
reset Btrieve resources, and more.reset Btrieve resources, and more.
Since BUtility's operation is so closely tied to the features of theSince BUtility's operation is so closely tied to the features of the
Btrieve Record Manager, we must assume that you are already familiar withBtrieve Record Manager, we must assume that you are already familiar with
Btrieve's theory of operation and terminology.Btrieve's theory of operation and terminology.
WHAT'S NEW IN VERSION 2.0?WHAT'S NEW IN VERSION 2.0?
In BUtility version 1.x, the editing screen only accommodated recordIn BUtility version 1.x, the editing screen only accommodated record
lengths of up to 4096 bytes. BUtility version 2.0 will allow you to editlengths of up to 4096 bytes. BUtility version 2.0 will allow you to edit
a data buffer which is up to 64K long. The default data buffer length isa data buffer which is up to 64K long. The default data buffer length is
still 4K but you may use the /dbuflen switch on the command line tostill 4K but you may use the /dbuflen switch on the command line to
specify a higher value. See Appendix A for more information on thespecify a higher value. See Appendix A for more information on the
/dbuflen command line switch./dbuflen command line switch.
Version 1.x did not allow you to update variable length records. Now, ifVersion 1.x did not allow you to update variable length records. Now, if
you are editing a variable length record and you update or insert theyou are editing a variable length record and you update or insert the
record in the file, you are be asked to specify the data buffer length forrecord in the file, you are be asked to specify the data buffer length for
the record. Therefore, BUtility no longer has the buffer length orthe record. Therefore, BUtility no longer has the buffer length or
variable length limitations that it once had.variable length limitations that it once had.
Additionally, all features of Btrieve version 5.0 have been incorporatedAdditionally, all features of Btrieve version 5.0 have been incorporated
into version 2.0 such as Autoincrement key types, data compression, freeinto version 2.0 such as Autoincrement key types, data compression, free
space thresholds, key-only or data-only files, and step operations.space thresholds, key-only or data-only files, and step operations.
Screen output and general display performance have been greatly improved.Screen output and general display performance have been greatly improved.
The interface has been updated to conform to the Microsoft Common UserThe interface has been updated to conform to the Microsoft Common User
Interface.Interface.
The Get Position operation returns a dialog box containing the binaryThe Get Position operation returns a dialog box containing the binary
value of the position of the record and the Get Direct operation acceptsvalue of the position of the record and the Get Direct operation accepts
the position as a binary value.the position as a binary value.
A file may add a supplemental index defined from the key definition dialogA file may add a supplemental index defined from the key definition dialog
box. This makes it very easy to add new indices to a Btrieve file. It isbox. This makes it very easy to add new indices to a Btrieve file. It is
just as easy to drop a supplemental index or to define and build anjust as easy to drop a supplemental index or to define and build an
external index file.external index file.
All of the commands which are available in the BUTIL program areAll of the commands which are available in the BUTIL program are
implemented in BUtility.implemented in BUtility.
Our favorite new feature is the Quick Field. With it, you may specify a dataOur favorite new feature is the Quick Field. With it, you may specify a data
type, position, and length to view and replace any field of data in the datatype, position, and length to view and replace any field of data in the data
buffer. So, if you have a BFloat number in your file which is not a keybuffer. So, if you have a BFloat number in your file which is not a key
field, you may finally see what the number really is.field, you may finally see what the number really is.
INSTALLATIONINSTALLATION
Install BUDEMO wherever you would like: on your local or network hard diskInstall BUDEMO wherever you would like: on your local or network hard disk
drive under any directory or on a floppy. Copy the file BUDEMO.EXE to anydrive under any directory or on a floppy. Copy the file BUDEMO.EXE to any
disk.disk.
DEMONSTRATION VERSION LIMITATIONSDEMONSTRATION VERSION LIMITATIONS
BUDEMO has a few limitations. Any file to be opened or created must have theBUDEMO has a few limitations. Any file to be opened or created must have the
word 'DEMO' in its name and must reside in the current directory. BUDEMOword 'DEMO' in its name and must reside in the current directory. BUDEMO
will automatically return to the command line after 10 minutes of operation.will automatically return to the command line after 10 minutes of operation.
EXECUTING BUTILITYEXECUTING BUTILITY
BUtility is invoked from the DOS command line by entering the BUDEMOBUtility is invoked from the DOS command line by entering the BUDEMO
command. The syntax for BUDEMO is as follows:command. The syntax for BUDEMO is as follows:
/b Causes CGA screens to display in black and white /b Causes CGA screens to display in black and white
/dbuflen Specifies a maximum data buffer length greater than the default /dbuflen Specifies a maximum data buffer length greater than the default
of 4K. Enter the length in blocks of 1024 bytes. /d64 of 4K. Enter the length in blocks of 1024 bytes. /d64
specifies a data buffer length of 64K. specifies a data buffer length of 64K.
/k Selects View-Key Buffer as default on entry to BUtility. /k Selects View-Key Buffer as default on entry to BUtility.
/m Causes messages to appear after all Btrieve operations. /m Causes messages to appear after all Btrieve operations.
/n Disables sound. /n Disables sound.
/oowner Specifies the owner if you specify a filename. If the owner is /oowner Specifies the owner if you specify a filename. If the owner is
'smith' then use /osmith for the owner. 'smith' then use /osmith for the owner.
/s Selects View-Status as default on entry to BUtility. /s Selects View-Status as default on entry to BUtility.
If BUDEMO is invoked without /k or /s, then the data buffer is the defaultIf BUDEMO is invoked without /k or /s, then the data buffer is the default
view when a file is opened. The Btrieve Record Manager must be loaded beforeview when a file is opened. The Btrieve Record Manager must be loaded before
BUtility is executed. If BUtility is executed without the Btrieve RecordBUtility is executed. If BUtility is executed without the Btrieve Record
Manager, the screen will display:Manager, the screen will display:
If a filename is specified on the BUDEMO command line, BUtility will attemptIf a filename is specified on the BUDEMO command line, BUtility will attempt
to open the file. If the file is successfully opened, the data bufferto open the file. If the file is successfully opened, the data buffer
(default), key buffer (/k), or status screen (/s) will be displayed.(default), key buffer (/k), or status screen (/s) will be displayed.
BUTILITY MENUSBUTILITY MENUS
Once BUtility is executed, the horizontal menu bar will appear at the top ofOnce BUtility is executed, the horizontal menu bar will appear at the top of
the display.the display.
To activate the menus, press ALT. To select a specific menu, press theTo activate the menus, press ALT. To select a specific menu, press the
highlighted menu letter. To pull down the File menu, press ALT-F. If youhighlighted menu letter. To pull down the File menu, press ALT-F. If you
just press ALT, the File menu is highlighted. You may use the direction keysjust press ALT, the File menu is highlighted. You may use the direction keys
to highlight the desired menu. Once you have selected the desired menu itemto highlight the desired menu. Once you have selected the desired menu item
on the menu bar, press enter or the down direction key to pull down thaton the menu bar, press enter or the down direction key to pull down that
menu.menu.
Once the menu has been pulled down, use the direction keys to select theOnce the menu has been pulled down, use the direction keys to select the
desired sub menu, or press the highlighted key from the list of sub menudesired sub menu, or press the highlighted key from the list of sub menu
items. For example, once you have selected the File menu, either use theitems. For example, once you have selected the File menu, either use the
direction keys to move the selection bar down to Open or simply press O.direction keys to move the selection bar down to Open or simply press O.
Also, notice that you may use the direction keys to move the menu to pullAlso, notice that you may use the direction keys to move the menu to pull
down other menus from the menu bar.down other menus from the menu bar.
GETTING STARTED WITH BUTILITYGETTING STARTED WITH BUTILITY
When BUtility needs information from you to perform a specific task, it doesWhen BUtility needs information from you to perform a specific task, it does
so through standard dialog boxes.so through standard dialog boxes.
Make sure that BUDEMO.EXE and DEMO.DAT are copied to the current directoryMake sure that BUDEMO.EXE and DEMO.DAT are copied to the current directory
and that Btrieve is loaded.and that Btrieve is loaded.
Execute BUtility from the command line by typing BUDEMO and pressing ENTER.Execute BUtility from the command line by typing BUDEMO and pressing ENTER.
Press ENTER to pass the copyright dialog box. Then press ALT-F and selectPress ENTER to pass the copyright dialog box. Then press ALT-F and select
Open to open a Btrieve file. The Open File dialog box will appear.Open to open a Btrieve file. The Open File dialog box will appear.
The first information BUtility wants is the file name. This informationThe first information BUtility wants is the file name. This information
should be provided by you in the File Name text box. Type the file nameshould be provided by you in the File Name text box. Type the file name
DEMO.DAT, but do not press ENTER. Notice that you may use the direction keysDEMO.DAT, but do not press ENTER. Notice that you may use the direction keys
to move the cursor back over the text and that INSERT and DELETE have theirto move the cursor back over the text and that INSERT and DELETE have their
expected consequences. Use TAB to move to the Owner Name text box. Useexpected consequences. Use TAB to move to the Owner Name text box. Use
SHIFT-TAB to move from Owner Name back to File Name.SHIFT-TAB to move from Owner Name back to File Name.
Notice that the OK command button is highlighted. This indicates that it isNotice that the OK command button is highlighted. This indicates that it is
the default command which will be executed when ENTER is pressed. At anythe default command which will be executed when ENTER is pressed. At any
point in a dialog box, you may press ESCAPE to cancel the operation. Also,point in a dialog box, you may press ESCAPE to cancel the operation. Also,
notice that the bottom line of the BUtility display lists several keynotice that the bottom line of the BUtility display lists several key
combinations that perform various operations.combinations that perform various operations.
Several keys are available while operating with dialog boxes:Several keys are available while operating with dialog boxes:
TAB: Moves the cursor to the next field. TAB: Moves the cursor to the next field.
SHIFT-TAB: Moves the cursor to the previous field. SHIFT-TAB: Moves the cursor to the previous field.
ENTER: Selects OK command button. ENTER: Selects OK command button.
DIRECTION KEYS: Moves between options in an option button field and moves DIRECTION KEYS: Moves between options in an option button field and moves
along text in a text box. along text in a text box.
ALT: Turns on highlight key of field names. ALT: Turns on highlight key of field names.
ALT-HIGHLIGHT: Moves cursor to a specific field. ALT-HIGHLIGHT: Moves cursor to a specific field.
From the Owner Name text box, press TAB. Now you are in the Mode optionFrom the Owner Name text box, press TAB. Now you are in the Mode option
buttons. The default mode is Normal and is indicated by the marker. You maybuttons. The default mode is Normal and is indicated by the marker. You may
select another mode by using the up and down direction keys to move theselect another mode by using the up and down direction keys to move the
marker from one option to another. Only one option in an option button listmarker from one option to another. Only one option in an option button list
may be selected at any given time.may be selected at any given time.
Press ENTER to activate the OK command button to open the file. If the filePress ENTER to activate the OK command button to open the file. If the file
is opened successfully, BUtility will display the hexadecimal data buffer.is opened successfully, BUtility will display the hexadecimal data buffer.
You should recognize the similarity between this screen and the DOS debugYou should recognize the similarity between this screen and the DOS debug
screen or other data/file editors. The initial data buffer screen displaysscreen or other data/file editors. The initial data buffer screen displays
character values in hexadecimal on the left portion of this display while thecharacter values in hexadecimal on the left portion of this display while the
right portion displays the ASCII character equivalent for each byte in theright portion displays the ASCII character equivalent for each byte in the
buffer. Notice that the hex number displayed on the bottom line of thebuffer. Notice that the hex number displayed on the bottom line of the
display at the right corner is the offset, 0 relative, of the cursor withindisplay at the right corner is the offset, 0 relative, of the cursor within
the record buffer. Thus, 0000 is the first byte in the record. Also noticethe record buffer. Thus, 0000 is the first byte in the record. Also notice
that the data buffer is initialized to a string of spaces (Hex 20, decimalthat the data buffer is initialized to a string of spaces (Hex 20, decimal
32).32).
Press ALT-V to pull down the View menu and select Decimal by pressing C.Press ALT-V to pull down the View menu and select Decimal by pressing C.
This changes the data buffer display to decimal values. Notice that theThis changes the data buffer display to decimal values. Notice that the
decimal number at the lower right of the screen now represents the positiondecimal number at the lower right of the screen now represents the position
(1 relative) of the cursor within the file. Thus, 1 indicates that the(1 relative) of the cursor within the file. Thus, 1 indicates that the
cursor in at position 1 in the data buffer.cursor in at position 1 in the data buffer.
Press ALT-U for Utilities and press S to select Set Owner. This is how youPress ALT-U for Utilities and press S to select Set Owner. This is how you
may easily assign an owner to the file.may easily assign an owner to the file.
Type DEMO in the Owner Name text box and press TAB to move to the EncryptType DEMO in the Owner Name text box and press TAB to move to the Encrypt
Data check box. These check boxes allow you to encrypt data in the file orData check box. These check boxes allow you to encrypt data in the file or
to allow read-only access to the file.to allow read-only access to the file.
Check boxes activate certain options which may be available. To activate orCheck boxes activate certain options which may be available. To activate or
deactivate a check box, press TAB until the cursor is in the desired optiondeactivate a check box, press TAB until the cursor is in the desired option
and press press the SPACE BAR. An activated check box will display an Xand press press the SPACE BAR. An activated check box will display an X
between the brackets while a deactivated check box does not.between the brackets while a deactivated check box does not.
Press TAB to the Cancel command button. Notice that OK is no longerPress TAB to the Cancel command button. Notice that OK is no longer
highlighted but Cancel is. You may press ESC or SPACE BAR to cancel the Sethighlighted but Cancel is. You may press ESC or SPACE BAR to cancel the Set
Owner option.Owner option.
Now you should be back at the data buffer screen. Press CTRL-S to view theNow you should be back at the data buffer screen. Press CTRL-S to view the
status of the file. This is the first use of a shortcut key. A shortcut keystatus of the file. This is the first use of a shortcut key. A shortcut key
is just an easy method to choose a menu option without using the pull downis just an easy method to choose a menu option without using the pull down
menus. Press ALT-V to pull down the View menu and notice that Status hasmenus. Press ALT-V to pull down the View menu and notice that Status has
CTRL-S next to it. Thus, CTRL-S is the shortcut method to view the statusCTRL-S next to it. Thus, CTRL-S is the shortcut method to view the status
screen.screen.
This screen should be familiar to those who have used the BUTIL -STAT commandThis screen should be familiar to those who have used the BUTIL -STAT command
provided with the Btrieve Record Manager. It shows the record and keyprovided with the Btrieve Record Manager. It shows the record and key
characteristics of the open file. If there are more key segments than willcharacteristics of the open file. If there are more key segments than will
fit on one screen, you may use the up and down direction keys to scrollfit on one screen, you may use the up and down direction keys to scroll
through the list. Press CTRL-K to view the key buffer.through the list. Press CTRL-K to view the key buffer.
This screen allows you to directly view and edit the keys of a file. You mayThis screen allows you to directly view and edit the keys of a file. You may
enter values here and perform get operations to establish positioning withinenter values here and perform get operations to establish positioning within
the file. Notice that keys such as integers are the actual expanded numbers,the file. Notice that keys such as integers are the actual expanded numbers,
not the bytes that make up the number. Therefore, when you type a key whichnot the bytes that make up the number. Therefore, when you type a key which
is defined as a two byte integer, the two bytes in the data buffer at theis defined as a two byte integer, the two bytes in the data buffer at the
key's position contain the bytes which make up the number.key's position contain the bytes which make up the number.
Notice that the current key path is indicated to the left of the key by aNotice that the current key path is indicated to the left of the key by a
round marker. To select another key path, press ALT-K to pull down the Keyround marker. To select another key path, press ALT-K to pull down the Key
Path menu and select the desired key path.Path menu and select the desired key path.
When using BUtility, all rules that apply to Btrieve and application programsWhen using BUtility, all rules that apply to Btrieve and application programs
remain. Thus, for example, changing the key path requires a get operation toremain. Thus, for example, changing the key path requires a get operation to
re-establish current positioning.re-establish current positioning.
Press CTRL-D to return to the data buffer. Finally, press ALT-V to pull downPress CTRL-D to return to the data buffer. Finally, press ALT-V to pull down
the View manu and press Q to view a Quick Field. Move the marker to BFloat,the View manu and press Q to view a Quick Field. Move the marker to BFloat,
press TAB, type 1 for position, press TAB, type 4 for length, and presspress TAB, type 1 for position, press TAB, type 4 for length, and press
ENTER. The BFloat number represented by the four bytes at position 1 in theENTER. The BFloat number represented by the four bytes at position 1 in the
data buffer is displayed in the Field Value text box.data buffer is displayed in the Field Value text box.
You may press TAB to move to the Field Value text box, enter a new number,You may press TAB to move to the Field Value text box, enter a new number,
and press ATL-R to replace the 4 bytes in the data buffer so that theyand press ATL-R to replace the 4 bytes in the data buffer so that they
represent the value that you have entered.represent the value that you have entered.
BUtility 2.0 is available from SMITHWARE, Inc. for $129.95 plus $7 domesticBUtility 2.0 is available from SMITHWARE, Inc. for $129.95 plus $7 domestic
or $25 international shipping and handling.or $25 international shipping and handling.